home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
B-Business
/
(c)b4.d64
/
file_master
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-04
|
12KB
|
397 lines
1 REM *********************
2 REM PONZO/WATERLOO/MAR/84
3 REM *********************
4 :
5 REM FILE/MASTER...FOR C64
6 :
10 POKE56,7*16+12:POKE55,8*16:CLR
11 PRINTCHR$(14):C1=15:C2=12:C3=0:POKE53281,C1:POKE53280,C2:POKE646,C3
12 PRINT"[147]MARCH/84":FORT=1TO500:NEXT:GOSUB63000
13 REM MENU
14 W$="":IFTF$=""THENTF$="[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]":NM=-1:NC$=""
15 POKE646,C3:PRINT"[147] HIT [211][208][193][195][197][194][193][210][146] TO";
16 POKE646,C3:PRINT""W$"LOAD [212][201][212][204][197]-[198][201][204][197]":PRINTL$
17 M$(1)="[212]YPE[157][157][157][157][184][184][184][184][145] IN DATA."
18 M$(2)="[196]ISPLAY[157][157][157][157][157][157][157][184][184][184][184][184][184][184][145] DATA."
19 M$(3)="[210]ECALL[157][157][157][157][157][157][184][184][184][184][184][184][145] OR [211]AVE[157][157][157][157][184][184][184][184][145] DATA."
20 M$(4)="[208]ERFORM[157][157][157][157][157][157][157][184][184][184][184][184][184][184][145] [213]SER [211]UBROUTINE."
21 M$(5)="[211]ORT[157][157][157][157][184][184][184][184][145] DATA."
22 M$(6)="[211]EARCH[157][157][157][157][157][157][184][184][184][184][184][184][145] DATA."
23 M$(7)="[195]REATE OR [205]ODIFY[157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][184][184][184][184][184][184][184][184][184][184][184][184][145] [212][201][212][204][197]-[198][201][204][197]."
25 FORI=1TO7:PRINTX$" "STR$(I)"[146]: "M$(I)"":NEXT
34 PRINTL$:PRINTX$" [146] HIT "Q$"[146] TO [209][213][201][212] ":POKE646,C3
35 PRINTSD$"[145]"L$SD$" E[146]=EXPLAIN":POKE646,C3
36 GOSUB16000:PT=0:GOSUB60:GOSUB63500
37 IFQ9GOTO13
44 IFA$=Q$ THEN INPUT"[147][215]ANT TO QUIT Y[157][157][157]";U9$:IFU9$="Y"THENEND
45 IFA$="E"THENGOSUB63600
46 A=VAL(A$):AA=ASC(A$):IFA>7THEN14
47 PRINTLEFT$(SD$,2*A+1)X$""M$(A):T0=0:IFA$=Q$GOTO13
48 IFAA=32THENGOSUB40000:GOTO54
49 GETA$:T0=T0+1:IFA$=""ANDT0<20THEN49
50 IFA$<>""THEN14
51 IFLEFT$(TF$,1)="[160]"ANDA<7THENW$="[211][208][193][195][197][146] AND [144]":GOSUB16100:GOTO16
52 ONAGOSUB100,200,300,400,600,700,900
54 GOSUB2000:GOTO14
60 POKE646,C3:PRINTSD$"[145][145][145][145][145][145][176]";:FORL9=1TOWD-2:PRINT"[192]";:NEXT:PRINT"[174]"
65 PRINTSD$"[145][145][145][145][145][221]DATA FILE ="FL$" [146]";:POKE646,C3:PRINTN"RECORDS";
66 PRINT"[157][157][157][157][157][157][157][157][157]"NC$
70 PRINTSD$"[145][145][145][145][221][157][221]TITLE FILE="TF$"[146]";:POKE646,C3:PRINTNM+1"TITLES"
75 PRINTSD$"[145][145][173]";:FORL9=1TOWD-2:PRINT"[192]";:NEXT:PRINT"[189][145][145][145][157][221][157][221][157][221]";
80 POKE646,C3:RETURN
100 REM ENTER DATA
105 IFN<>0THEN120
110 GOSUB16100:PRINT"[147][166][166][166][166][166][166][166]NEW FILE[166][166][166][166][166][166][166]":INPUT"[206]AME OF [196][193][212][193] [198][201][204][197] ";NM$
115 FL$=" "+NM$
120 PRINT"[147]CURRENT FILE";FL$
130 PRINT"THERE ARE "N" RECORDS."
140 INPUT"[211]TART WITH RECORD # 1[157][157][157]";I:GOSUB16000:NN=N
150 IFI>N+1ORI>NCTHENGOSUB16100:GOTO100
160 GOSUB15000:IFA$=Q$THEN175
165 I=I+1:IFI<=NCTHEN160
170 PRINT"[147]******MAXIMUM NUMBER OF RECORDS******":PRINT"START NEW FILE"
175 IFI>N THENN=I-1
180 RETURN
200 REM DISPLAY
205 PT=0:FF$="":INPUT"[147]OUTPUT TO PRINTER N[157][157][157]";A$:IFA$="N"THEN210
206 PT=1:INPUT"DOES THE PRINTER NEED A LINE FEED N[157][157][157]";U9$
207 IFL9$="Y"THENFF$=CHR$(10)
210 GOSUB18000:A=VAL(A$):ONAGOTO215,17000,17500
215 T9=0:INPUT"[147]SUPPRESS TITLES N[157][157][157]";T9$:PRINT"[147]":IFT9$="N"THENT9=1
216 IFPT=0THENGOSUB17110
220 IFPT=1THENOPEN4,4:CMD4
225 FORI=C1TOC2:Z=0:K=0:C=0:SN=SN(I)
230 FORJ=ZTOA(K):PRINTP$(PT);
235 IF T9 THEN PRINTTL$(J)"[146]:";
236 PRINT"[146]";:IFPT=0THENGOSUB280
240 PRINTDA$(SN,J)"[146]";:LD=LEN(DA$(SN,J))
241 X=L(J)+2-LD:FORK9=1TOX:PRINT" ";:NEXT:NEXT:C=1-C
242 IFPT=1ANDWD=40THENPRINTPT$(C);:GOTO244
243 PRINT
244 IFK<KMTHENZ=A(K)+1:K=K+1:GOTO230
245 PRINT FF$
246 IFPT=0THENGOSUB260
250 NEXT:IFPT=1THENPRINT#4:CLOSE4
255 X=0:PT=0:RETURN
260 IFPEEK(197)=P1THENI=C2:RETURN
265 IFPEEK(197)=P2THENRETURN
270 IFPEEK(197)=P3THEN270
275 RETURN
280 PRINTRV$(R(J));:RETURN
300 REM RECALL/SAVE
301 PRINT"[147]1[146]:[210]ECALL":PRINT"2[146]:[211]AVE":GOSUB63501:A=VAL(A$):PRINT""
302 IF A=1THENPRINT"[210]ECALL":GOTO305
303 PRINT"[211]AVE":GOTO500
305 PRINT:INPUT"[206]AME OF [196][193][212][193] [198][201][204][197]";NM$:GOSUB16000:N$=NM$
306 IFN$=Q$THENRETURN
307 IFRIGHT$(N$,1)<>"+"THENN$=N$+"+"
310 INPUT"[196]RIVE 0[157][157][157]";DR$:GOSUB16000
315 OPEN15,8,15
320 OPEN2,8,2,DR$+":"+N$+",S,R"
325 INPUT#15,E,EM$,ET$,ES$
330 IFE<>0THENPRINT"DISK STATUS "EM$:GOTO355
335 INPUT#2,N:IFSS=0THENPRINT""N" RECORDS"
340 INPUT#2,NM
345 FORI=1TON:FORJ=0TONM:INPUT#2,DA$:IFDA$=SS$THENDA$=""
350 DA$(I,J)=DA$:NEXT:NEXT
355 FL$=" "+NM$
360 CLOSE2:CLOSE15
365 FORI=0TON:SN(I)=I:NEXT:RETURN
400 REM USER ROUTINE CALCULATIONS
401 R$="[147][215]ORKING ON RECORD "
402 IFPEEK(705)<>123THENPRINT"[147][206][207] [213][211][197][210] [211][213][194][210][207][213][212][201][206][197]":RETURN
405 FORI=1TON:SN=SN(I):PRINTR$SN:FORW1=0TONM:IFN(W1)=0THENV(W1)=VAL(DA$(SN,W1))
410 NEXT:GOSUB55000:FORW1=0TONM:IFN(W1)=1THEN450
420 V1=V(W1):L1=2:IFV1<0THENL1=1
430 DA$(SN,W1)=MID$(STR$(V1),L1,L(W1))
450 NEXT:NEXT:RETURN
500 REM SAVE TO DISK
510 PRINT:PRINT"[206]AME OF [196][193][212][193] [198][201][204][197] ";NM$;:GOSUB16000
511 OPEN1,0:FORY=1TOLEN(NM$):PRINT"[157]";:NEXT:INPUT#1,NM$:CLOSE1:PRINT
512 IFNM$=Q$THENRETURN
513 IFRIGHT$(NM$,1)<>"+"THENN$=NM$+"+"
514 FL$=" "+NM$
515 INPUT"[196]RIVE 0[157][157][157]";DR$:GOSUB16000
520 INPUT"[207]VERWRITE EXISTING FILE N[157][157][157]";A$:GOSUB16000
525 OPEN15,8,15
530 IFA$="Y"THENDR$="@"+DR$
535 OPEN2,8,2,DR$+":"+N$+",S,W"
540 INPUT#15,E,EM$,ET$,ES$
545 IFE<>0THENPRINT"DISK STATUS "EM$:GOTO590
550 PRINT#2,N;CR$;NM;CR$;
555 FORI=1TON:SN=SN(I):FORJ=0TONM
560 DA$=DA$(SN,J):IFDA$=""THENDA$=SS$
570 PRINT#2,DA$;CR$;
580 NEXT:NEXT
590 CLOSE2:CLOSE15:RETURN
600 REM SORT
610 IFN<=1THENPRINT"[147]****NO DATA FILE[146]****":RETURN
632 PRINT"[147]SORT ON:"
633 I3=7*4096+12*256+8*16:I4=7*4096+14*256+14*16:I5=7*4096+15*256
634 POKEI4,0:POKEI4+1,68:POKEI4+2,193
635 FORS=0TONM:PRINT""S"[146]:"FD$(S):NEXT
636 GOSUB63500:S=VAL(A$)
637 IFS>NMTHEN632
639 K=7+3*S*(NC+1):KH%=K/256:POKEI4+4,KH%:POKEI4+3,K-256*KH%:POKEI4+5,N
640 PRINT"[147]SORTING ON "FD$(S)
641 IFN(S)=1THENPOKEI3+90,131:POKEI3+132,131:POKEI3+91,125:POKEI3+133,125
642 IFN(S)=0THENPOKEI3+90,66:POKEI3+132,66:POKEI3+91,126:POKEI3+133,126
643 SYSI3
644 FORI9=0TON:SN(I9)=PEEK(I5+I9):NEXT:PRINT"[147][206]OW [211][193][214][197] [211][207][210][212][197][196] [196][193][212][193]":RETURN
700 REM SEARCH
710 GOTO10000
720 REM INPUT ROUTINE
730 IN$="":N0=0
735 PRINT"[175][157]";
740 GETA$:IFA$=""THEN740
745 A=ASC(A$):IFA>47ANDA<91THEN775
750 IFA=A1ORA=A2ORA=A3ORA=A4ORA=A5ORA=A6THEN735
755 PRINT" [157]";:IFA=A9THENS$=IN$:PRINTA$:RETURN
765 IFIN$=""ANDA=A8THEN735
770 IFA=A8THENN0=N0-1:PRINT"[157] [157]";:IN$=LEFT$(IN$,N0):GOTO735
775 IFA=44THENA$=";"
780 PRINT" [157]"A$;:IN$=IN$+A$:N0=N0+1:GOTO735
900 REM TITLE/FILE
910 PRINT"[147][215]HERE IS [198][201][204][197]/[212][201][212][204][197][211]":INPUT"[196]RIVE 0[157][157][157]";DR$
920 PRINT"..LOADING [198][201][204][197]/[212][201][212][204][197][211]"
925 LOADDR$+":FILE/TITLES*",8
2000 REM KEY GETS
2005 PRINTSD$"[145]"L$SD$BL$SD$X$"[146]HIT [210][197][212][213][210][206][146] TO CONTINUE";
2010 GETA$:IFA$<>""THEN2010
2020 GETA$:IFA$=""THEN2020
2030 IFA$<>CHR$(13)THEN2010
2040 RETURN
2100 GETA$:IFA$<>""THEN2100
2110 GETA$:IFA$=""THEN2110
2120 IFA$<>CHR$(32)THEN2100
2130 RETURN
2200 GETA$:IFA$<>""THEN2200
2210 GETA$:IFA$=""THEN2210
2220 IFA$=CHR$(13)THEN2200
2230 RETURN
2300 Q9=0:GETA$:IFA$<>""THEN2300
2310 GETA$:IFA$=""THEN2310
2320 IFA$="[133]"THENC1=-(C1+1)*(C1<15):POKE53281,C1:GOTO2300
2330 IFA$="[134]"THENC2=-(C2+1)*(C2<15):POKE53280,C2:GOTO2300
2345 IFA$="[135]"THENC3=-(C3+1)*(C3<15):POKE646,C3:Q9=1
2350 RETURN
10000 REM SEARCH
10010 S=0
10020 MM=NM:HI$="SEARCH":GOSUB19000:K8=I
10030 PRINT"[147]1[146]:SEARCH FILE IN [195]64 "FL$
10040 PRINT"2[146]:SEARCH ALL FILES"
10050 GOSUB2200:A1=VAL(A$):IFA1=0THEN10000
10060 PRINT"[147]":FORS=0TOK8
10070 PRINTFD$(TN(S))"= ";:GOSUB720
10080 GOSUB16000
10090 S$(S)=S$:X(S)=LEN(S$):NEXT:J0=1:II=0
10100 IFA1=2THENGOTO10250
10110 PRINTL$
10120 FORI=J0TON:S8=0:FORS=0TOK8
10125 IFLEFT$(DA$(I,TN(S)),X(S))=S$(S)THENS8=S8+1
10130 NEXT:IFS8=K8+1 THENII=I:I=N
10140 NEXT:IFII=0THENPRINT"NO EXACT MATCH":PRINTL$:RETURN
10150 IFII=-1THENPRINT"NO MORE..":PRINTL$:A$="":RETURN
10160 PRINT"[147]"II:FORJ=0TONM
10170 PRINTFD$(J);:GOSUB280
10180 PRINTDA$(II,J):NEXT
10200 PRINTL$:PRINTSD$"[145]"BL$SD$"[145]ANY CHANGES?";
10205 GOSUB63501:IFA$="Y"THENI=II:GOSUB15000:GOSUB10400
10210 PRINTSD$"[145]"BL$SD$"[145][195]ONTINUE SEARCH? "
10220 GOSUB2200
10230 IFA$="N"THENRETURN
10240 J0=II+1:II=-1:PRINT"[147]":GOTO10120
10250 REM SEARCH ALL FILES
10260 GOSUB50000:PRINT"[147]"
10270 FORP=1TOCN:NM$=NM$(P):IFRIGHT$(NM$,1)<>"+"THEN10310
10275 PRINT"SEARCHING "NM$"[146] "
10280 N$=NM$:GOSUB315
10290 II=0:J0=1
10300 GOSUB10120:IFA$="N"THENP=CN
10310 NEXT P
10320 RETURN
10400 PRINT"[147][210]EWRITE MODIFIED FILE TO DISK ";:GOSUB63501
10410 IFA$="N"THENRETURN
10420 GOSUB500:RETURN
15000 REM INPUT ROUTINE
15005 SN=SN(I)
15010 PRINTCHR$(14):S$="":PRINT"[147]RECORD"I" *=DELETE RECORD"
15011 FORK=0TONM:PRINTPS$(K)TL$(K)BX$(K);
15015 PRINTDA$(SN,K);:NEXT:K=0:GOSUB15200
15020 K=K-(K<0):IFK>NMTHEN15130
15025 IN$=DA$(SN,K):N0=LEN(IN$):PRINTPS$(LK)TL$(LK)
15030 PRINTPS$(K)""TL$(K)"[146]"S$IN$;:LK=K:PRINT"[175][157]";
15035 GETA$:IFA$=""THEN15035
15040 A=ASC(A$):IFA>47ANDA<91THEN15095
15045 IFA=A1ORA=A2ORA=A3ORA=A4ORA=A5ORA=A6THEN15030
15055 IFA=ABTHENIN$=DA$(SN(I-1),K):A=A9:PRINTPS$(K)TL$(K)S$IN$;
15060 PRINT" [157]";:IFA=A9THENDA$(SN,K)=LEFT$(IN$,L(K)):K=K+1:GOTO15020
15070 IFA=A7THENDA$(SN,K)=LEFT$(IN$,L(K)):K=K-1:GOTO15020
15080 IFIN$=""ANDA=A8THEN15030
15090 IFA=A8THENN0=N0-1:PRINT"[157] [157]";:IN$=LEFT$(IN$,N0):GOTO15030
15095 IFA=AQTHENRETURN
15096 IFA=42 THENGOSUB15500:GOTO15000
15100 IFN0=L(K)THENK=K+1:GOTO15020
15110 IFA=44THENA$=";"
15115 PRINT" [157]"A$;:IN$=IN$+A$:N0=LEN(IN$):IFN0<L(K)THEN15030
15120 DA$(SN,K)=LEFT$(IN$,L(K)):K=K+1:IFK<=NMTHEN15020
15130 PRINT"[147]RECORD"SN:FORK=0TONM:PRINTPS$(K)TL$(K)BX$(K);
15131 PRINTDA$(SN,K);:NEXT:K=0:GOSUB15200
15134 PRINT"[196][193][212][193] [207][203]?";:GOSUB63501:IFA$="N"THENGOTO15000
15135 RETURN
15140 BX$="[221][145][157][176]":FORZ=1TOBL+1:BX$=BX$+"[192]":NEXT:BX$=BX$+"[174][157][221][157][189][157][157]"
15150 FORZ=1TOBL+1:BX$=BX$+"[192][157][157]":NEXT:BX$=BX$+"[173][145]":PRINTBX$;:RETURN
15200 PRINTSD$"[145][145]":PRINTBB$;
15210 PRINT""Q$"[146]=QUIT[221][145][157][178][157][177][145]"B$"[146]=LAST[221][145][157][178][157][177][145]";
15220 PRINT"_[146]BACK[221][145][157][178][157][177][145]RETURN[146]=FORWARD":RETURN
15500 PRINT"[147][215]ANT TO DELETE [210][197][195][207][210][196]:([217]/[206])":PRINT""DA$(SN,0):INPUT"";U9$
15510 IFLEFT$(U9$,1)<>"Y"THENRETURN
15520 PRINT"DELETING....":N=N-1:FORU9=ITON:SN(U9)=SN(U9+1):NEXT:SN(U9)=SN
15530 RETURN
16000 REM BEEP
16010 POKESID+24,15:POKESID+4,33:FORPP=1TO50:NEXT:POKESID+4,0
16015 POKESID+24,0
16020 RETURN
16100 POKESID+24,15
16110 FORU=1TO5:POKESID+4,17:FORPP=1TO50:NEXT:POKESID+4,0:NEXT
16115 POKESID+24,0
16120 RETURN
17000 REM SELECTED TITLES FOR PRINTING
17010 MM=NM:HI$="DISPLAY":GOSUB19000
17020 K8=I:IFPT=0THENGOSUB17110
17030 IFPT=1THENOPEN4,4:CMD4
17040 FORI=C1TOC2:SN=SN(I)
17050 FORL=0TOK8:J=TN(L):PRINTSPC(X)P$(PT);:IFPT=1THENGOSUB280
17060 PRINTFD$(J)"[146]";:IFPT=0THENGOSUB280
17070 PRINTDA$(SN,J)FF$:NEXT
17080 IFPT=0THENPRINTL$:GOSUB260
17090 NEXT:IFPT=1THENPRINT#4:CLOSE4
17100 X=0:PT=0:RETURN
17110 PRINT"[147]DURING THE DISPLAY:"
17120 PRINT"PRESS SPACE[146] TO START/STOP"
17130 PRINT"PRESS RETURN[146] TO DISCONTINUE"
17140 PRINTSD$"HIT SPACE[146] TO BEGIN:";:GOSUB2100:PRINT"[147]":RETURN
17500 REM BOXED DISPLAY
17510 S$="":IFPT=1THENRETURN
17520 GOSUB17110:FORI=C1TOC2:SN=SN(I)
17530 PRINT"[147]RECORD"I:FORK=0TONM:PRINTPS$(K)TL$(K)BX$(K);
17540 PRINTDA$(SN,K);:NEXT:GOSUB260:NEXT:RETURN
18000 REM DISPLAY MENU
18010 PRINT:PRINT"[212]HERE ARE"N" RECORDS":INPUT"[211]TART WITH RECORD # 1[157][157][157]";C1
18020 GOSUB16000:IFC1>NTHENGOSUB16100:GOTO18000
18030 C2=N:PRINT"[197]ND WITH RECORD # ";C2
18035 INPUT"[145][197]ND WITH RECORD # ";C2:GOSUB16000:FORY9=1TO200:NEXT
18040 IFC2>NTHENGOSUB16100:GOTO18000
18050 PRINTL$:PRINT"1[146]: STANDARD DISPLAY"
18060 PRINT"2[146]: SELECTED DISPLAY":IFPT=0THENPRINT"3[146]: BOXED DISPLAY"
18070 GOSUB63500:GOSUB16000
18080 A=VAL(A$):IFA=0ORA>3THEN18050
18090 X=15*PT
18100 RETURN
19000 REM CHOOSE TITLES
19010 PRINT"[147]";:FORI=0TOMM:PRINT""I"[146]:"TL$(I):TN(I)=0:NEXT:I=0:PRINTL$
19020 PRINTSD$"[145][145][145][145][145][145]";:BL=35:GOSUB15140
19025 PRINT"CHOOSE "HI$"[146] TITLES[221][145][157][178][157][177][145]A[146]=ALL";
19030 PRINT" [221][145][157][178][157][177][145] "Q$"[146]=QUIT":OPEN1,0
19035 PRINTSD$"[145][145]";:PRINT"TITLE # [157][157][157][157]";:INPUT#1,TN$:IFTN$=Q$ THEN19060
19040 IFTN$="A"THENFORI=0TONM:TN(I)=SN(I):NEXT:GOTO19060
19045 GOSUB16000:TN=VAL(TN$):IFTN>MMTHEN19035
19050 TN(I)=TN:I=I+1:PRINTLEFT$(SD$,TN+1)""TN":"TL$(TN):GOTO19035
19060 CLOSE1:I=I-1:RETURN
40000 REM LOAD TITLE-FILE
40001 POKE705,1
40005 IFLEFT$(TF$,1)<>"[160]"THENRUN
40010 INPUT"[147][212][201][212][204][197]-[198][201][204][197] NAME";TF$
40020 INPUT"[196]RIVE 0[157][157][157]";DR$:GOSUB16000
40030 OPEN15,8,15
40040 OPEN2,8,2,DR$+":"+TF$+",S,R"
40050 INPUT#15,E,EM$,ET$,ES$
40060 IFE<>0THENPRINT"DISK STATUS "EM$:CLOSE2:CLOSE15:GOSUB2000:RETURN
40065 INPUT#2,EN:IFEN=0THEN40070
40066 FORY=1TOEN:INPUT#2,EQ$(Y):NEXT:IFPEEK(705)=1THEN60000
40070 INPUT#2,NC:REM MAX # ENTRIES
40071 NC$="("+RIGHT$(" "+STR$(NC),3)+" [205][193][216])":ZO$=CHR$(0)
40075 INPUT#2,NM:REM NUMBER OF TITLES
40080 INPUT#2,LL:REM LINE LENGTH
40086 INPUT#2,KM:REM TITLES/LINE
40090 DIM TL$(NM),FD$(NM),SN(NC),I(2*NC),L(NM),N(NM),V(NM),SV(NM),K(NM)
40095 DIM DA$(NC,NM),TN(NM),S$(NM),PS$(NM),R(NM),BX$(NM),X(NM)
40100 FORI=0TONM:INPUT#2,R(I):DA$(0,I)=ZO$:NEXT
40110 FORI=0TONM:INPUT#2,TL$(I):INPUT#2,FD$(I):INPUT#2,L(I):INPUT#2,N(I)
40115 INPUT#2,PS$(I):NEXT:FORK=0TOKM:INPUT#2,A(K):NEXT
40117 CLOSE2:CLOSE15:PRINT"[147] [212][201][212][204][197][211][146]: A[146]=ALPHABETIC N[146]=NUMERIC""
40118 RV$(0)[178]"WAIT":RV$(1)[178]"":AL$(1)[178]"A":AL$(0)[178]"N"
40120 [129]I[178]0[164]NC:SN(I)[178]I:[130]:S$[178]""
40130 [129]K[178]0[164]NM:[153]PS$(K)RV$(R(K))TL$(K)RV$(0);:BL[178]L(K)
40140 [141]15140:[153]AL$(N(K)):BX$(K)[178]BX$
40150 [130]:[142]
50000 [143] GET FILE NAMES
50010 B[178]30:AN[178]1:CN[178]0
50020 [133]"LOADSTR$RIVE 0CMDCMDCMD";DR$:[141]16000
50030 [159]15,8,15:[153]"LOADFILES ON DISK:DRIVE "DR$:[153]L$
50040 [152]15,"M-E"[199](212)[199](237)
50050 [159]2,8,0,"$"[170]DR$[170]":*=S"
50060 [161]#2,A$:[161]#2,A$:I$[178]""
50070 [161]B9$:[139]ST[179][177]0[176]B9$[179][177]""[167]50200
50080 [129]A[178]1[164]B:[161]#2,A$
50090 [139]A$[178]""[167]A$[178][199](0)
50100 I$[178]I$[170]A$:[130]:J$[178]I$:[139]AN[178]1[167]50190
50110 I$[178][202](I$,8)
50120 LF$[178][200](I$,1)
50130 [139]LF$[178][199](34)[176]LF$[178]" "[167]I$[178][202](I$,2):[137]50120
50140 J[178]1:II$[178]""
50150 J$[178][202](I$,J,1):[139]J$[179][177][199](34)[167]J[178]J[170]1:II$[178]II$[170]J$:[139]J[179]17[167]50150
50160 [139]J[177]16[167]50200
50170 [153]""II$:[139][201](II$,1)[179][177]"+"[167][153]"ON"BL$:[153]"ON";:[137]50190
50180 CN[178]CN[170]1:NM$(CN)[178]II$
50190 AN[178]0:I$[178]"":B[178]32:[137]50070
50200 [160]2:[160]15:[153]
50210 [142]
55000 [143] USER SUBROUTINE
55999 [142]
59000 TF$[178]"":L1[178][194](706):[129]Y[178]1[164]L1:TF$[178]TF$[170][199]([194](706[170]Y)):[130]
59010 DR$[178][196]([194](706[170]Y)):[141]40030:[151]705,0:[142]
60000 [160]2:[160]15
60004 L1[178][195](TF$)
60005 [129]Y[178]1[164]L1:[151]706[170]Y,[198]([202](TF$,Y,1)):[130]:[151]706[170]Y,[197](DR$)
60010 [151]198,9:[129]I[178]0[164]8:[151]631[170]I,13:[130]:[151]706,L1:FF[178]55000
60020 [153]"LOAD";:[129]Y[178]1[164]EN:[153]FF[170]Y;EQ$(Y):[130]:[153]"LISTRUNSTOP"
60030 [153]""L$:[153]"(null)(null)VAL(null) (null)(null)PEEK(null)(null)(null)(null)RIGHT$(null)VAL..";:[151]705,123:[129]I9[178]1[164]900:[130]:[128]
63000 [143] INITIALIZE
63001 [153]"LOAD":[139][194](31872)[178]32[167]63010
63002 [153]"LOADLOAD"[199](34)"FILE/BOOT"[199](34)",8":[153]"RUN"
63003 [151]198,2:[151]631,13:[151]632,13:[128]
63010 [139][194](705)[178]123[167][141]59000
63012 NF[178]50:[143] MAX NUMBER OF FILES
63015 NL[178]7:[143] MAX NUMBER OF LINES
63020 [134] NM$(NF)
63090 L$[178]"TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTAN"
63100 LP$[178]L$[170]L$:BL$[178]" "
63105 DT$[178]"":[129]I[178]1[164]39:DT$[178]DT$[170]".":[130]:SS$[178]"CLOSE"
63110 Q$[178]"@":AQ[178][198](Q$):B$[178]"^":AB[178][198](B$):FL$[178]" "
63120 P1[178]1:P2[178]60:P3[178]64:WD[178]40
63135 [153]"LOAD(null)(null)(null)VAL: FUNCTION KEYS CHANGE COLOURS...":[129]T9[178]1[164]1000:[130]
63140 [153]: [153]"...INITIALIZING ASCRIGHT$(null)VAL/(null)ATN(null)(null)VAL(null)..."
63145 L$(1)[178]LP$:L$(0)[178]L$
63150 C0[178]211:LN[178]214:V$[178]"":O$[178]"WAIT":RV$(0)[178]O$:RV$(1)[178]V$
63160 L$[178][200](L$,WD[171]1)
63170 SD$[178]""
63180 CR$[178][199](13):P$(1)[178]"":P$(0)[178]""
63190 PT$(1)[178]"":PT$(0)[178][199](13)
63200 A1[178]17:A2[178]145:A3[178]148:A4[178]19:A5[178]147:A6[178]157:A7[178]95:A8[178]20:A9[178]13:AT[178]44:AE[178]59
63210 X$[178]"":[129]I[178]1[164]5[170]2[172](WD[171]40)[173]8
63220 X$[178]X$[170]"":[130]
63260 BL[178]35:[141]15140:BB$[178]BX$
63320 SID[178]54272:[151]SID[170]1,50:[151]SID[170]3,200:[151]SID[170]5,0:[151]SID[170]6,240
63330 [151]SID[170]24,0
63399 [142]
63500 [153]SD$"ON"L$SD$"SELECTIONWAIT? ";:[151]646,C3
63501 [151]204,0:[141]2300:[151]204,1:[139]Q9[178]0[167] [141]16000
63502 [142]
63600 [143] EXPLAIN
63601 [139]NM$[178]""[167]63610
63605 [153]"LOAD(null)ANT TO SAVE "NM$" WAITFIRST";:[141]63501:[139]A$[178]"Y"[167]500
63610 [153]"LOAD(null)HERE IS ASCRIGHT$(null)VAL/VAL(null)(null)(null)ATNRIGHT$(null):";:[133]" DRIVE 0CMDCMDCMD";DR$
63620 [151]704,[197](DR$):[147]DR$[170]":FILE/EXPLAIN*",8:[138]
63700 [153][194](197);:[137]63700